home *** CD-ROM | disk | FTP | other *** search
/ PC Answers 2003 September / PC Answers September 2003.iso / Software / trial / MonitorIT 5.2.06 / monitorit_fullsetup.exe / data1.cab / Rpm / AdministerSecurity.asp < prev    next >
Encoding:
Text File  |  2003-06-24  |  29.9 KB  |  839 lines

  1. <html>
  2.  
  3. <head>
  4. <meta name="GENERATOR" content="Microsoft FrontPage 3.0">
  5. <title>Configure Security</title>
  6. <link rel="stylesheet" type="text/css" href="css/rpmstyle.css">
  7. <style>
  8. .GTabBox {  height : 200; width : 530; border: none; background-color : activeborder }
  9. </style>
  10. </head>
  11.  
  12. <body class="bodyc" language="JavaScript" RPMHostIP="!BreakoutBot:MonitorIP!"
  13. RPMHostPort="!BreakoutBot:MonitorPort!" RPMUserName="!BreakoutBot:UserName!" BOBDone="!BreakoutBot:Done!"
  14. onload="top.banner.savePageCoord(event,document.body,'AdminSecurity'); InitRpmCC_AS();" onbeforeunload="DiscoRpmCC_AS()" onresize="processSizeChange()" onclick="checkClick()" onkeydown="processBSP()">
  15.  
  16. <script LANGUAGE="JavaScript">
  17. <!--
  18.  
  19. var    UMode = ""; // Mode of Operation, New, Edit, Delete, Lookup
  20. var   UserLupRecCount = 0; // Count of records returned from User Lookup operation
  21. var   UserSelectIdx = 0; // Index of currently selected User 
  22. var    UserRecLength = 7; // User Lookup record length
  23. var   ignoreDBChangeEvent = false;
  24. var     ReconnectEvent = false;
  25. var     Hp = 82;
  26. var   Tid = null;
  27. var    SLOrigSate = "", SLOrigPort = "";
  28.  
  29. // Capture and ignore script errors
  30.     window.onerror = wwScrErr;
  31. function wwScrErr() {
  32.     return true;
  33. }
  34.  
  35. /* On Load tell the Comm control to Connect to the Server */
  36. function InitRpmCC_AS() {
  37.     top.MainLoaded = true; // Flag that Main is now loaded
  38.     initButtonState(); // set initial button states
  39.     Hp = parseInt(document.body.RPMHostPort,10);
  40.     RpmCC_AS.Connect(document.body.RPMHostIP,Hp, "");
  41.     processSizeChange();
  42. }
  43. function processReconnect() {
  44.     Tid = null;
  45.     if ( RpmCC_AS.IsConnected() ) {
  46.         Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  47.         return;
  48.     }
  49.     RpmCC_AS.Connect(document.body.RPMHostIP,Hp, ""); 
  50. }
  51. function processConnectConfirmed() {
  52.     // Restore Filter and Computer Store    
  53.     if ( ReconnectEvent == false ) {
  54.         RpmCC_AS.SecurityGet();  // Request Security State
  55.         RpmCC_AS.GetAutoAgentRegister();  // Request AutoAgentRegister State
  56.         //RpmCC_AS.GetSYSLOGParms();  // Request SYSLOG Parms
  57.         processLookupReset(); // go do User Lookup
  58.         ReconnectEvent = true;
  59.     }
  60.     top.Rstatus.Pstat("Connected");
  61.     if ( Tid != null ) {
  62.         clearTimeout(Tid); // stop timeout routine
  63.     }
  64.     Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  65. }
  66. function processConnectionCheck() {
  67.     Tid = null;
  68.     RpmCC_AS.SendKeepAlive("Check");
  69.     Tid = setTimeout("processConnectionCheck()",30000); // Delay 30 secs then check connection
  70. }
  71.  
  72. /* On Unload tell the Comm control to Disconnect from the Server */
  73. function DiscoRpmCC_AS() {
  74.     RpmCC_AS.Disconnect();
  75.     top.banner.processStopCommX();
  76.     if ( Tid != null ) {
  77.         clearTimeout(Tid); // stop timeout routine
  78.     }
  79. }
  80.  
  81. function processNewButton() {
  82.     UMode = "New"; // Set Mode of operation
  83.     AS_User.value = ""; // clear Name field
  84.     AS_Desc.value = ""; // clear Description field
  85.     AS_Pswd.value = ""; // clear Password field
  86.     AS_VPswd.value = ""; // clear Verify password field
  87.     AS_AAdmin.checked = "checked";
  88.     AS_AAnalyst.checked = "checked";
  89.     AS_AnalystRights[0].checked = "checked";
  90.     commonNew_Edit(); // Do common processing
  91. }            
  92.  
  93. function processEditButton() {
  94.     UMode = "Edit"; // Set Mode of operation
  95.     commonNew_Edit(); // Do common processing
  96.     processAnalystRights();
  97. }    
  98.  
  99. function commonNew_Edit() { //Common processing for New and Edit
  100.     /* enable input fields */
  101.     AS_User.className = "";
  102.     AS_Desc.className = "";    
  103.     AS_Pswd.className = "";
  104.     AS_VPswd.className = "";
  105.     AS_AAnalyst.className = "";
  106.     AS_AAdmin.className = "";
  107.  
  108.     AS_AAnalyst.disabled = "";
  109.     AS_AAdmin.disabled = "";    
  110.  
  111.     AS_AnalystRights[0].className = "";
  112.     AS_AnalystRights[0].disabled = "";    
  113.     AS_AnalystRights[1].className = "";
  114.     AS_AnalystRights[1].disabled = "";    
  115.  
  116.     /* enable and disable appropriate buttons */
  117.     SetButtonState(UNewButton,"1");
  118.     SetButtonState(UEditButton,"1");
  119.     SetButtonState(UDeleteButton,"1");
  120.     SetButtonState(UUpdateButton,"0");
  121.     SetButtonState(UResetButton,"0");
  122.  
  123.     /* enable appropriate User Name fields */
  124.     AS_User.style.display = "";
  125.     AS_UserSel.style.display = "none";
  126.     AS_User.focus();
  127. }
  128.  
  129. function processUpdateButton() {
  130.     /* get input which is validated when first entered */
  131.     AS_UName = AS_User.value;
  132.     AS_UDesc = AS_Desc.value;
  133.     AS_UPswd = AS_Pswd.value;
  134.     AS_UAAd = (AS_AAdmin.checked) ? "1" : "0";
  135.     AS_UAAn = (AS_AAnalyst.checked) ? "1" : "0";
  136.     AS_UARn = (AS_AnalystRights[0].checked) ? "1" : "0";
  137.                     
  138.                     
  139.     if (AS_UName.length == 0) { // if no name entered
  140.         top.Rstatus.Pstat("Please enter a name",true);        
  141.         alert("Please enter a name");
  142.         AS_User.focus();
  143.     }
  144.     else if (AS_UPswd != AS_VPswd.value) {
  145.         top.Rstatus.Pstat("Verify Password Does Not Match Password, please reenter both",true);
  146.         alert("Verify Password Does Not Match Password, please reenter both");
  147.         AS_Pswd.focus();    
  148.     }
  149.     else {
  150.         /* inhibit Update Button now */
  151.         SetButtonState(UUpdateButton,"1");
  152.  
  153.         /* Determine if UMode is "New" or "Edit" and send data to DataBase Server appropriately */
  154.         if (UMode == "New") {
  155.             rstat = RpmCC_AS.UserAdd(AS_UName,AS_UDesc+"[]"+AS_UARn,AS_UPswd,AS_UAAd,AS_UAAn);
  156.         }
  157.         else { // "Edit"
  158.             OrigName = AS_UserSel.options[UserSelectIdx].text; 
  159.             AS_UserID = getUserID(OrigName);
  160.             rstat = RpmCC_AS.UserReplace(AS_UserID,AS_UName,AS_UDesc+"[]"+AS_UARn,AS_UPswd,AS_UAAd,AS_UAAn);
  161.         }
  162.     
  163.         if ( rstat ) { // if unable to initiate request        
  164.             top.Rstatus.Pstat("Unable to start the UPDATE request",true);
  165.             processReset();
  166.         }
  167.         else { // waiting for OperationCompleteEvent
  168.             ignoreDBChangeEvent = true;
  169.             top.Rstatus.Pstat("One moment while UPDATE request completes");
  170.         }
  171.     }
  172. }
  173.  
  174. function processDeleteButton() {
  175.     UMode = "Delete"; // set mode of operation
  176.     AS_UName = AS_User.value; // get User Name
  177.  
  178.     /* ask user to confirm delete */
  179.     if ( confirm("Are you sure you want to delete: " + AS_UName + " ?") ) {
  180.         if ( UserLupRecCount == 1 && ES.checked == true ) {
  181.              if ( !confirm("This is the last User record.  Deleing it will disable security.  Do you want to proceed?\n -Press OK to proceed with deleting this last record and disable security\n -Press Cancel to ignore") ) {
  182.                 return; // ignore
  183.             }
  184.             ES.checked = ""; // unckeck  Enable Security
  185.             if ( RpmCC_AS.SecuritySet("0") ) { // disable security
  186.                 top.Rstatus.Pstat("Unable to save Global Enable Security setting",true);
  187.                 return; // ignore
  188.             }
  189.         }
  190.         /* inhibit Edit and Delete now */
  191.         SetButtonState(UEditButton,"1");
  192.         SetButtonState(UDeleteButton,"1");
  193.  
  194.         AS_UserID = getUserID(AS_UName);    // Get User ID from Name
  195.  
  196.         /* send DELETE request to DataBase Server */
  197.         if ( RpmCC_AS.UserDelete(AS_UserID) ) {
  198.             top.Rstatus.Pstat("Unable to start the DELETE request",true);
  199.             processReset();
  200.         }
  201.         else { // waiting for OperationCompleteEvent
  202.             ignoreDBChangeEvent = true;
  203.             top.Rstatus.Pstat("One moment while DELETE request completes");
  204.         }
  205.     }
  206. }
  207.  
  208. /* Initial User Lookup Request */
  209. function processLookupReset() {
  210.     /* Make sure User Store and User Name combo are flushed */
  211.     lth = AS_UserSel.length;
  212.     for (i=0; i < lth; ++i)
  213.         AS_UserSel.remove(0);
  214.  
  215.     lth = AS_UserStore.length;
  216.     for (i=0; i < lth; ++i)
  217.         AS_UserStore.remove(0);
  218.  
  219.     UserLupRecCount = 0; // clear Lookup record counter
  220.     if ( RpmCC_AS.UserLookup("","") ) {
  221.             UMode = "";
  222.             top.Rstatus.Pstat("Unable to start the User LOOKUP request",true);
  223.     }
  224.     else {
  225.             UMode = "Lookup"; // set Mode of operation
  226.             top.Rstatus.Pstat("One moment while User LOOKUP request completes");
  227.     }
  228. }
  229.  
  230. /* Reset Processing after initial and subsequent User operations */
  231. function processResetButton() {
  232.     if ( UserLupRecCount == 0 ) {
  233.       processCommonReset();
  234.        SetButtonState(UEditButton,"1");    
  235.         SetButtonState(UDeleteButton,"1");
  236.         UserSelectIdx = 0; // reset index
  237.     }
  238.     else {    
  239.         if ( UMode == "Edit" ) {
  240.             populateInput(UserRecLength*UserSelectIdx);   
  241.             processCommonReset(); // common button and field reset
  242.         }
  243.         else {    
  244.             populateInput(0); // set input fields
  245.             UserSelectIdx = 0; // reset index
  246.             processCommonReset(); // common button and field reset
  247.  
  248.             /* select and focus to 1st name entry */
  249.             AS_UserSel.options[0].selected = "selected";
  250.             if ( AS_UserSel.style.visibility != "hidden" ) {
  251.                 AS_UserSel.focus();
  252.             }
  253.         }
  254.     }
  255. }
  256.  
  257. /* Process Combo User Name Change Event */
  258. function processUserName() {
  259.     Nobj = AS_UserSel; // get object
  260.     for (i=0; i < Nobj.length; ++i) {
  261.         if ( Nobj.options[i].selected ) {
  262.             UserSelectIdx = i;
  263.             populateInput(UserRecLength*i);
  264.             break;
  265.         }
  266.     }
  267. }
  268.  
  269. function populateInput(idx) {
  270.     StoreObj = AS_UserStore; 
  271.     AS_User.value = StoreObj.options[idx+0].text; // Synchronize name field with Store name field
  272.     AS_Desc.value = (StoreObj.options[idx+2].text.length == 0) ? "" : StoreObj.options[idx+2].text;
  273.     AS_Pswd.value = (StoreObj.options[idx+3].text.length == 0) ? "" : StoreObj.options[idx+3].text;
  274.     AS_VPswd.value = AS_Pswd.value; 
  275.     AS_AAdmin.checked = StoreObj.options[idx+4].text;
  276.     AS_AAnalyst.checked = StoreObj.options[idx+5].text;
  277.     if ( StoreObj.options[idx+6].text == "1" )
  278.         AS_AnalystRights[0].checked = "checked";
  279.     else
  280.         AS_AnalystRights[1].checked = "checked";
  281. }
  282.  
  283. function updateStore(idx) {
  284.     StoreObj = AS_UserStore;
  285.     AS_UName = AS_User.value; // User Name
  286.     AS_UserSel.options[idx].text = AS_UName; // Update name in case edited
  287.     si = UserRecLength * idx; // index into Store for correct entry
  288.     StoreObj.options[si+0].text = AS_UName;
  289.     StoreObj.options[si+2].text = (AS_Desc.value.length == 0) ? "" : AS_Desc.value; 
  290.     StoreObj.options[si+3].text = (AS_Pswd.value.length == 0) ? "" : AS_Pswd.value;
  291.     StoreObj.options[si+4].text = (AS_AAdmin.checked) ? "checked" : "";
  292.     StoreObj.options[si+5].text = (AS_AAnalyst.checked) ? "checked" : "";
  293.     StoreObj.options[si+6].text = (AS_AnalystRights[0].checked) ? "1" : "0";
  294. }
  295.  
  296. /* Process User OP Complete Event */
  297. function processUserOpComplete() {
  298.     top.Rstatus.Pstat("Request Completed");
  299.     if (UMode == "Lookup") {
  300.         if (UserLupRecCount == 0) { // check if any records found
  301.             top.Rstatus.Pstat("No record matches found for User LOOKUP request",true);    
  302.         }
  303.         processResetButton();
  304.     }
  305.     else if (UMode == "Edit") {
  306.         /* update the Storage */
  307.         updateStore(UserSelectIdx);
  308.         processCommonReset(); // common button and field reset
  309.         if ( AS_UserSel.style.visibility != "hidden" ) {
  310.             AS_UserSel.focus();
  311.         }
  312.     }    
  313.     else if (UMode == "Delete") {
  314.         /* update the Storage */
  315.         dix = UserRecLength*UserSelectIdx;
  316.         for (i=0; i < UserRecLength; ++i) {
  317.             AS_UserStore.remove(dix);
  318.         }
  319.         --UserLupRecCount; // adjust user record count
  320.         AS_UserSel.remove(UserSelectIdx);
  321.         if (AS_UserSel.length == 0) { // if no more Users
  322.             AS_Desc.value = ""; // clear Description field
  323.             AS_Pswd.value = ""; // clear Password field
  324.             AS_VPswd.value = ""; // clear Verify password field
  325.             UserLupRecCount = 0; // clear Lookup record counter
  326.             ES.checked = "";
  327.         }
  328.         processResetButton(); 
  329.     }
  330.     else { // UMode New
  331.         /* Reset for next */
  332.         processLookupReset();
  333.     }
  334. }
  335.  
  336. /* Process common button and field reset items */
  337. function processCommonReset() {
  338.     AS_Desc.className = "idis";
  339.     AS_Pswd.className = "idis";
  340.     AS_VPswd.className = "idis";
  341.     AS_AAdmin.className = "idis";
  342.     AS_AAnalyst.className = "idis";
  343.  
  344.     AS_AAdmin.disabled = "disabled";
  345.     AS_AAnalyst.disabled = "disabled";
  346.  
  347.     AS_AnalystRights[0].className = "idis";
  348.     AS_AnalystRights[0].disabled = "disabled";
  349.     AS_AnalystRights[1].className = "idis";
  350.     AS_AnalystRights[1].disabled = "disabled";
  351.  
  352.     /* enable and disable appropriate buttons */
  353.     SetButtonState(UNewButton,"0");    
  354.     SetButtonState(UEditButton,"0");    
  355.     SetButtonState(UDeleteButton,"0");
  356.     SetButtonState(UUpdateButton,"1");    
  357.     SetButtonState(UResetButton,"1");
  358.  
  359.     /* enable appropriate User Name fields */
  360.     AS_User.style.display = "none";
  361.     AS_UserSel.style.display = "";
  362. }
  363.  
  364. function processKeyPress() {
  365.     /* get KeyCode and check if invalid */
  366.     kc = event.keyCode;
  367.     stat = 1; // default to OK
  368.  
  369.     // Keys:   ~            %           [           ]           #           !
  370.     if (kc == 126 ||    kc == 37 || kc == 91 ||    kc == 93 || kc == 35 || kc == 33) { // Not acceptable 
  371.         stat = 0;
  372.     } // Keys:        *           ?
  373.     else if ( (kc == 42 || kc == 63) &&  event.srcElement.name != "AS_User" ) { //Not acceptable
  374.         stat = 0;
  375.     }
  376.     if (stat == 0) { // if Not Acceptable
  377.         event.returnValue=false;
  378.         top.Rstatus.Pstat("Keys ~%*?[]#! are not accepted for this field");    
  379.         alert("Keys ~%*?[]#! are not accepted for this field");    
  380.     }
  381.     else {
  382.         top.Rstatus.Pstat(""); // clear status line
  383.     }
  384. }    
  385. function processKeyPressPassword() {
  386.     /* get KeyCode and check if invalid */
  387.     kc = event.keyCode;
  388.     stat = 1; // default to OK
  389.  
  390.     // Keys:   ~           
  391.     if (kc == 126) { // Not acceptable 
  392.         stat = 0;
  393.     } // Keys:        *           ?
  394.     if (stat == 0) { // if Not Acceptable
  395.         event.returnValue=false;
  396.         top.Rstatus.Pstat("Tilde Key '~' is not accepted for this field");    
  397.         alert("Tilde Key '~' is not accepted for this field");    
  398.     }
  399.     else {
  400.         top.Rstatus.Pstat(""); // clear status line
  401.     }
  402. }    
  403. /* Process User LOOKUP RECORD Event */
  404. function processUserLookupRecord(Uid,UserName,UserDesc,UPswd,UAAdm,UAAnl) {
  405.     wrkarr = new Array();
  406.     ++UserLupRecCount; // bump record received counter
  407.     UNameObj = AS_UserSel; // User Name Combo box
  408.     StoreObj = AS_UserStore; // Storage
  409.     UAAdm = (UAAdm == "0") ? "" : "checked";
  410.     UAAnl = (UAAnl == "0") ? "": "checked";
  411.     wrkarr = UserDesc.split("[]");
  412.     if ( wrkarr.length < 2 ) {
  413.        wrkarr[1] = "1";
  414.    }    
  415.     addElementToSelect(UNameObj,UserName);
  416.     addElementToSelect(StoreObj,UserName);
  417.     addElementToSelect(StoreObj,Uid);
  418.     addElementToSelect(StoreObj,wrkarr[0]); // Description
  419.     addElementToSelect(StoreObj,UPswd);
  420.     addElementToSelect(StoreObj,UAAdm);
  421.     addElementToSelect(StoreObj,UAAnl);
  422.     addElementToSelect(StoreObj,wrkarr[1]); // Analyst Rights
  423. }
  424.  
  425. /* Process the Verify Password fields */
  426. function processVerifyPassword() {
  427.     if ( AS_Pswd.value != AS_VPswd.value) {
  428.         AS_VPswd.value = "";
  429.         top.Rstatus.Pstat("Verify Password Does Not Match Password, please reenter it",true);
  430.         alert("Verify Password Does Not Match Password, please reenter it");
  431.         AS_VPswd.focus();        
  432.     }
  433.     else {
  434.         top.Rstatus.Pstat(""); // clear status line
  435.     }
  436. }
  437.  
  438. /* Process DB Error in User Lookup Operation */
  439. function processUserOpError() {
  440.     top.Rstatus.Pstat("An error occurred during User LOOKUP operation",true);
  441.     processResetButton(); // reset
  442. }
  443.  
  444. /* Process Duplicate Error in User Add / Replace Operation */
  445. function processUserUpdateErrorDuplicate() {
  446.     top.Rstatus.Pstat("A duplicate User already exist in the DataBase. Cannot complete the UPDATE request",true);
  447.     processResetButton(); // reset
  448. }
  449.  
  450. /* Process User ID Not Found Error in EDIT/UPDATE Operation */
  451. function processUserUpdateErrorBadUser() {
  452.     top.Rstatus.Pstat("User not found in the DataBase. Cannot complete the UPDATE/DELETE request",true);
  453.     processResetButton(); // reset
  454. }
  455.  
  456. /* Get User Name from Store based on User ID */
  457. function getUserName(UID) {
  458.     UNobj = AS_UserStore; // get object
  459.     UserName = "";
  460.     for (i=0, j=0; i < UNobj.length; ++j, i+=UserRecLength) {
  461.         if ( UNobj.options[i+1].text == UID ) {
  462.             UserName = UNobj.options[i].text;
  463.             UserSelectIdx = j;
  464.             AS_UserSel.options[j].selected = "selected";
  465.             break;
  466.         }
  467.     }
  468.     return UserName;
  469. }
  470.  
  471. /* Get User ID from Store based on User Name */
  472. function getUserID(UNM) {
  473.     UNobj = AS_UserStore; // get object
  474.     UID = 0;
  475.     for (i=0, j=0; i < UNobj.length; ++j, i+=UserRecLength) {
  476.         if ( UNobj.options[i].text == UNM ) {
  477.             UserSelectIdx = j;
  478.             UID = UNobj.options[i+1].text;
  479.             break;
  480.         }
  481.     }
  482.     return UID;
  483. }
  484.  
  485. // Process Click Event for the Enable Global Security and AutoAgent Registration checkboxes
  486. function processES_AAR(cob) {
  487.     cob.checked = ( cob.checked == "" ) ? "checked" : "";    
  488.     enableApplyBut();
  489. }
  490.  
  491. // Process Apply Button Click
  492. function processApplyClick() {
  493.     ESset = (ES.checked == true) ? "1" : "0"; // Get Enable Security setting
  494.     AARset = (AAR.checked == true) ? "1" : "0"; // Get AutoAgent Registration setting
  495.     SetButtonState(RsApplyBut,"1"); // disable Apply button
  496.     
  497.     if ( ESset == "1") {
  498.         if ( UserLupRecCount == 0 ) {
  499.              alert("The Enable Security setting is checked but there are no User records defined. You must define at least one User record here, so you can subsequently log-in, before you can enable security!");
  500.             ES.checked = "";
  501.             return; // ignore   
  502.         }
  503.         else if ( !confirm("Are you sure you want to enable security?  You will need a log-in and password, defined here in a User record, on the next attempt to connect to the MonitorIT Server!\n -Press OK to proceed with Enable Security\n -Press Cancel to ignore") ) {
  504.             ES.checked = "";
  505.             return; // ignore   
  506.         }
  507.     }
  508.  
  509.     if ( RpmCC_AS.SecuritySet(ESset) ) {
  510.             top.Rstatus.Pstat("Unable to save Global Enable Security setting",true);
  511.     }
  512.     if ( RpmCC_AS.SetAutoAgentRegister(AARset) ) {
  513.             top.Rstatus.Pstat("Unable to save Auto Agent Registration setting",true);
  514.     }
  515.  
  516.     var OFE = (LSM.checked) ? "0" : "1";
  517.     var ucon = false;
  518.     if ( !(SLOrigSate == OFE && SLOrigPort == AS_SLPort.value) ) {
  519.         if ( OFE == "1" ) {
  520.              if ( confirm("Are you sure you want to Disable the SYSLOG Listening?\n\n Press OK to proceed with Disable.\n Press CANCEL to ignore.") ) {    
  521.                  ucon = true;
  522.              }
  523.          }
  524.         else {
  525.              if ( confirm("Are you sure you want to Enable the SYSLOG Listening?\n\n Press OK to proceed with Enable.\n Press CANCEL to ignore.") ) {    
  526.                  ucon = true;
  527.              }
  528.          }        
  529.           if ( ucon == true ) {
  530.             if ( RpmCC_AS.SetSYSLOGParms(OFE+"~"+AS_SLPort.value) ) {
  531.                 top.Rstatus.Pstat("Unable to set the SYSLOG parameters",true);
  532.                 alert("Unable to set the SYSLOG parameters");
  533.             }
  534.             else {
  535.                 SLOrigSate = OFE;
  536.                 SLOrigPort = AS_SLPort.value;
  537.                 top.Rstatus.Pstat("SYSLOG Parameters Set",true);
  538.             }    
  539.         }    
  540.     }
  541. }
  542.  
  543. // Enable Apply Button 
  544. function enableApplyBut() {
  545.     SetButtonState(RsApplyBut,"0");
  546. }
  547.  
  548. /* Set initial button state for all buttons */
  549. function initButtonState() {
  550.     SetButtonState(UNewButton,"0");    
  551.     SetButtonState(UEditButton,"1");    
  552.     SetButtonState(UDeleteButton,"1");
  553.     SetButtonState(UUpdateButton,"1");    
  554.     SetButtonState(UResetButton,"1");
  555. }
  556. function SetButtonState(BtObj,BState) {
  557.     //BtObj.className = (BState == "0") ? "BoxButton" : "BoxButtonD";
  558.     BtObj.disabled = (BState == "0") ? "" : "disabled";
  559.     BtObj.bdis = BState;
  560. }
  561.  
  562. function processSizeChange() {
  563.     //PopUpContext Menu
  564.     bCw = document.body.clientWidth;
  565.    PopUpContextSize(bCw);
  566. }
  567.  
  568. function processAnalystRights() {
  569.     if ( AS_AAnalyst.checked ) {
  570.         AS_AnalystRights[0].className = "";
  571.         AS_AnalystRights[0].disabled = "";
  572.         AS_AnalystRights[1].className = "";
  573.         AS_AnalystRights[1].disabled = "";  
  574.     }
  575.     else {
  576.         AS_AnalystRights[0].className = "idis";
  577.         AS_AnalystRights[0].disabled = "disabled";
  578.         AS_AnalystRights[1].className = "idis";
  579.         AS_AnalystRights[1].disabled = "disabled";
  580.     }
  581. }
  582.  
  583. function PopUpContextOpen() {
  584.     AS_UserSel.style.visibility = "hidden";
  585. }
  586. function PopUpContextClose() {
  587.     AS_UserSel.style.visibility = "visible";
  588. }
  589.  
  590. //-->
  591. </script>
  592.  
  593. <script LANGUAGE="JavaScript" src="js/MiscFunc.js"></script>
  594.  
  595. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="Connected()">
  596. <!--
  597. processConnectConfirmed();
  598. //-->
  599. </script> 
  600. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="Disconnected()">
  601. <!--
  602. top.Rstatus.Pstat("Disconnected",true);
  603. if ( Tid != null ) {
  604.     clearTimeout(Tid); // stop timeout routine
  605. }
  606. Tid = setTimeout("processReconnect()",10000); // Delay 10 secs then try reconnnect
  607. //-->
  608. </script>
  609.  
  610. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="DBChanged(cdata)">
  611. <!--
  612. /*
  613. if ( ignoreDBChangeEvent == false) {
  614.     top.banner.processDBChangeNotifyEvent(cdata);
  615. }
  616. ignoreDBChangeEvent = false;
  617. */
  618. //-->
  619. </script>
  620.  
  621. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="GetSYSLOGParms(aps)">
  622. <!--
  623. var warr = new Array();
  624. warr = aps.split("~");
  625. LSM.checked = (warr[0] == "0") ? "checked" : "";
  626. AS_SLPort.value = warr[1];
  627. SLOrigSate = warr[0];
  628. SLOrigPort = warr[1];
  629. //-->
  630. </script> 
  631.  
  632. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="SecuritySetting(secVal)">
  633. <!--
  634. ES.checked = (secVal == true) ? "checked" : "";
  635. //-->
  636. </script> 
  637.  
  638. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="SecurityOpComplete()">
  639. <!--
  640. top.Rstatus.Pstat("Global settings saved");
  641. //-->
  642. </script> 
  643.  
  644. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="SecurityOpError()">
  645. <!--
  646. top.Rstatus.Pstat("Error reading Global Security setting",true);
  647. //-->
  648. </script> 
  649.  
  650. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="AutoAgentRegSetting(aarVal)">
  651. <!--
  652. AAR.checked = (aarVal == true) ? "checked" : "";
  653. //-->
  654. </script> 
  655.  
  656. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="AutoAgentRegOpComplete()">
  657. <!--
  658. top.Rstatus.Pstat("Global settings saved");
  659. //-->
  660. </script> 
  661.  
  662. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="AutoAgentRegOpOpError()">
  663. <!--
  664. top.Rstatus.Pstat("Error reading Automatic Agent Registration setting",true);
  665. //-->
  666. </script> 
  667.  
  668. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserAddErrorDuplicate()">
  669. <!--
  670. processUserUpdateErrorDuplicate();
  671. //-->
  672. </script>
  673.  
  674. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserErrorDeleteNotFound()">
  675. <!--
  676. processUserUpdateErrorBadUser();
  677. //-->
  678. </script>
  679.  
  680. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserOpComplete()">
  681. <!--
  682. processUserOpComplete();
  683. //-->
  684. </script>
  685.  
  686. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserOpError()">
  687. <!--
  688. processUserOpError();
  689. //-->
  690. </script> 
  691.     
  692. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserLookupRecord(Uid,UNme,UDesc,UPswd,UAAdm,UAAnl)">
  693. <!--
  694. processUserLookupRecord(Uid,UNme,UDesc,UPswd,UAAdm,UAAnl);
  695. //-->
  696. </script>
  697.  
  698. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserErrorReplaceNotFound()">
  699. <!--
  700. processUserUpdateErrorBadUser();
  701. //-->
  702. </script>
  703.  
  704. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserReplaceErrorDuplicate()">
  705. <!--
  706. processUserUpdateErrorDuplicate();
  707. //-->
  708. </script> 
  709.  
  710. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="UserErrorAddDuplicate()">
  711. <!--
  712. processUserUpdateErrorDuplicate();
  713. //-->
  714. </script> 
  715.  
  716. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="StartCommunication()">
  717. <!--
  718. top.banner.processStartComm();
  719. //-->
  720. </script> 
  721.  
  722. <script LANGUAGE="JavaScript" FOR="RpmCC_AS" EVENT="StopCommunication()">
  723. <!--
  724. top.banner.processStopComm();
  725. //-->
  726. </script> 
  727.  
  728. <script LANGUAGE="JavaScript" src="js/PopUpMenuFunc.js"></script>
  729.  
  730. <object ID="RpmCC_AS" NAME="RpmCC_AS" WIDTH="14" HEIGHT="1" style="display:none"
  731. CLASSID="CLSID:D88C2358-FC83-11D1-BF49-00104B2D6F80" CODEBASE="controls/RPMComm.cab#version=5,2,0,0">
  732.   <param name="_Version" value="65536">
  733.   <param name="_ExtentX" value="2646">
  734.   <param name="_ExtentY" value="1341">
  735.   <param name="_StockProps" value="0">
  736. </object>
  737.  
  738. <center><div class="GTabBox" border="0" >
  739. <center>
  740. <div align="left" style="clear:both">
  741. <table border="1"  borderColor="activeborder" align="left">
  742.     <tr><td borderColorDark="graytext" borderColorLight="white" height="25" style="font-weight:800; font-size:12pt; background-color:threedhighlight; color:windowtext"> <img src="images/sAdminSecurity.gif" align="absmiddle" height="20" width="20"> Configure Security </td><td width="*"></td>
  743.     </tr></table><br><br>
  744. </div>
  745.  
  746. <div align="center" style="clear:both">
  747. <table class="fldset" border="0" width="526" cellspacing="3" cellpadding="2" height="210">
  748.   <tr>
  749.     <td width="522" height="180">
  750.     <div align="left">
  751.     <table border="0" width="520" cellspacing="3" cellpadding="2" height="170">
  752.       <tr>
  753.         <td width="126" align="right" class="inputlabel" height="25">User Name:</td>
  754.         <td width="394" height="25"><input TYPE="text" SIZE="37" NAME="AS_User" maxLength="40"
  755.         onkeypress="processKeyPress();" onkeydown="processKeyDown();" style="display: none"> <select
  756.         ONCHANGE="processUserName()" SIZE="1" NAME="AS_UserSel" class="idis" style="width: 190pt">
  757.         </select> <select SIZE="1" NAME="AS_UserStore" style="display: none">
  758.         </select> </td>
  759.       </tr>
  760.       <tr>
  761.         <td width="126" align="right" class="inputlabel" height="20">Password:</td>
  762.         <td width="394" height="20"><input TYPE="password" SIZE="30" NAME="AS_Pswd" maxLength="20"
  763.         onkeypress="processKeyPressPassword()" onkeydown="processKeyDown();" onFocus="chkDisabled(this)" class="idis"> </td>
  764.       </tr>
  765.       <tr>
  766.         <td width="126" align="right" class="inputlabel" height="20">Verify Password:</td>
  767.         <td width="394" height="20"><input TYPE="password" SIZE="30" NAME="AS_VPswd" maxLength="20"
  768.         onkeydown="processKeyDown();" onFocus="chkDisabled(this)"
  769.         onkeypress="processKeyPressPassword()" onChange="processVerifyPassword()" class="idis"> </td>
  770.       </tr>
  771.       <tr>
  772.         <td width="126" align="right" class="inputlabel" height="20">Description:</td>
  773.         <td width="394" height="20"><input TYPE="text" SIZE="45" NAME="AS_Desc" maxLength="64"
  774.         onkeypress="processKeyPress();" onkeydown="processKeyDown();" onFocus="chkDisabled(this)" class="idis"> </td>
  775.       </tr>
  776.       <tr>
  777.         <td width="126" align="right" height="20"></td>
  778.         <td width="394" class="inputlabel" height="20"><label for="AS_AAdmin"><input
  779.         TYPE="checkbox" VALUE="0" ID="AS_AAdmin" NAME="AS_AAdmin" 
  780.         onFocus="chkDisabled(this)"> Allow Administration  </label></td>
  781.       </tr>
  782.        <tr>
  783.         <td width="126" align="right" height="20"></td>
  784.         <td width="394" class="inputlabel" height="20"><label
  785.         for="AS_AAnalyst" onclick="processAnalystRights()"><input TYPE="checkbox" VALUE="0" ID="AS_AAnalyst" 
  786.         onFocus="chkDisabled(this)" NAME="AS_AAnalyst"> Allow Analysis: </label>
  787.               <input TYPE="radio" NAME="AS_AnalystRights" value="Full Rights" class="idis" onFocus="chkDisabled(this)" checked><span class="inputlabel" > Full Rights    </span><input TYPE="radio" NAME="AS_AnalystRights" value="View Only" class="idis" onFocus="chkDisabled(this)"><span class="inputlabel" > View Only</span>
  788.           </td>
  789.       </tr>
  790.    </table>
  791.    </div>
  792.    </td>
  793.   </tr>
  794.   <tr>
  795.     <td width="520" height="40">
  796.     <table class="fldset" border="1" width="510" cellspacing="1" cellpadding="1" height="40">
  797.      <tr>
  798.     <td width="510" align="center" height="40">
  799.     <button id="UNewButton" title="Enter a New User" onclick="if (this.bdis == '0') processNewButton();" bdis="0" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/NewImg.gif" align="absmiddle" height="14" width="13">  New</button>   
  800.     <button id="UEditButton" title="Edit the selected User" onclick="if (this.bdis == '0') processEditButton();" bdis="0" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/ConfigImg.gif" align="absmiddle" height="18" width="17"> Edit</button>   
  801.     <button id="UDeleteButton" title="Delete the selected User" onclick="if (this.bdis == '0') processDeleteButton();" bdis="0" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/DelImg.gif" align="absmiddle" height="14" width="14">Delete</button>   
  802.     <button id="UUpdateButton" title="Update database for the selected User" onclick="if (this.bdis == '0') processUpdateButton();" bdis="0" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/sSave.gif" align="absmiddle" height="15" width="15"> Save</button>   
  803.     <button id="UResetButton" title="Cancel and return to New" onclick="if (this.bdis == '0') processResetButton();" bdis="0" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/reset.gif" align="absmiddle" height="15" width="15">Cancel</button></td></tr></table>
  804.     </tr> 
  805.    <tr>
  806.     <td width="520" height="150">
  807.        <div align="center">
  808.        <hr>
  809.        <table border="0" width="470" cellspacing="0" cellpadding="2" height="105">
  810.              <tr>
  811.         <td colspan="2" align="center" class="titlelabel">Global Security Settings</td>
  812.           </tr>
  813.              <tr>
  814.         <td width="290" align="right" class="inputlabel" height="19" style="cursor:hand" onClick="processES_AAR(ES)">Enable Security:</td>
  815.         <td width="170" height="19"><input TYPE="checkbox" id="ES" VALUE="0" style="cursor:hand" onClick="enableApplyBut()"> </td>
  816.           </tr>
  817.           <tr>
  818.         <td width="290" align="right" class="inputlabel" height="19" style="cursor:hand" onClick="processES_AAR(AAR)">Enable Automatic Agent Registration:</td>
  819.         <td width="170" height="19"><input TYPE="checkbox" id="AAR" VALUE="0" style="cursor:hand" onClick="enableApplyBut()"> </td>
  820.           </tr>
  821.           <tr style="display:none">
  822.         <td width="290" align="right" class="inputlabel" height="25" style="cursor:hand" onClick="processES_AAR(LSM)">Enable Listening for SYSLOG Messages:</td>
  823.         <td width="170" height="25"><input TYPE="checkbox" id="LSM" VALUE="0" style="cursor:hand" onClick="enableApplyBut()" CHECKED>   <span class="inputlabel">Listen On Port: <input TYPE="text" SIZE="5" NAME="AS_SLPort" maxLength="6"
  824.         onkeypress="processKeyPress();" value="514" onkeydown="processKeyDown();" onFocus="chkDisabled(this)"></span></td>
  825.           </tr>
  826.             <tr>
  827.         <td colspan="2" align="center"><div classFlag="idis" ><table border="1" cellspacing="1" cellpadding="1" height="40" width="60%"><tr><td width="100%" align="center"><button id="RsApplyBut" onclick="processApplyClick()" style="width:80px; height:28px" style="font-family:arial; font-size : 8pt; font-weight : 600; cursor:hand" disabled><img src="images/apply.gif" align="absmiddle" height="16" width="16"> Apply</button></td></tr></table></div>
  828.             </td>
  829.           </tr>
  830.         </table>
  831.        </div>
  832.    </td>
  833.   </tr>
  834.  
  835. </table></div>
  836. </center></div>
  837. </body>
  838. </html>
  839.